Use Case Diagram for the final ITASadvanced


use case map



Use Case Descriptions

 


ACTIONS

 

kick:

 

Participating actors-

initiated by user

communicates with rcssserver

 

Entry conditions-

kick key is pressed or another action calls for kick funtionality

 

Flow of events-

-user presses kick key or an action uses kick

-kick message is sent to rcssserver with power and direction relative to mouse position

 

Exit conditions-

none

 

Special requirements-

the ball has to be kickable

 

 

dash:

 

Participating actors-

communicates with rcssserver

 

Entry conditions-

another action(e.g. run) calls for dash funtionality

 

Flow of events-

-an action calls for dash functionality

-dash message is sent to rcssserver with required power

 

Exit conditions-

none

 

Special requirements-

none

 

 

turn:

 

Participating actors-

initiated by user

communicates with rcssserver

 

Entry conditions-

turn key is pressed or another action calls for turn funtionality

 

Flow of events-

-user presses turn key or an action uses turn

-  message is sent to rcssserver with moment relative to mouse position

 

Exit conditions-

none

 

Special requirements-

none

 

 

run:

includes dash

 

Participating actors-

initiated by user

 

Entry conditions-

run key is pressed

 

Flow of events-

-user presses run key

-dash is called every cycle with power relative to mouse position

 

Exit conditions-

user releases run key

 

Special requirements-

 

 

trackingRun:

includes turn

extends run

 

Participating actors-

initiated by user

 

Entry conditions-

user presses trackingRun key

 

Flow of events-

-same as run, except that turn is used to face the current mouse position before every dash

 

Exit conditions-

user releases trackingRun key

 

Special requirements-

 

 

 

faceBall:

includes turn

 

Participating actors-

initiated by user

 

Entry conditions-

user presses faceBall key

 

Flow of events-

-if user can't see the ball, he/she turns around until the ball is in their vision cone

-once the ball is visible, the user turns to face the ball

 

Exit conditions-

user is facing ball OR user has done a full 360deg turn and not found the ball

 

Special requirements-

 

 

chaseBall:

includes faceBall

includes dash

 

Participating actors-

initiated by user

 

Entry conditions-

user presses chaseBall key

 

Flow of events-

-faceBall is called if the ball is not visible

-dash towards the ball repeatedly with power relative to the distance from the ball

-if angle to ball changes between dashes, faceBall again and continue dashing

 

Exit conditions-

user reaches the ball OR user presses chaseBall key again

 

Special requirements-

 

 

pass:

includes kick

 

Participating actors-

initiated by user

 

Entry conditions-

ball is kickable, teammate is in range & user presses pass key

 

Flow of events-

-pass command given with target player as an argument(how is yet to be decided)

-ball is kicked in the direction of the target player with enough power to reach them

note: The final implementation for passing is yet to be decided upon.   It will be a choice between a learned passing algorithm and a hardcoded algorithm.

 

Exit conditions-

ball is kicked OR pass is aborted

 

Special requirements-

 

 

shoot:

includes kick

 

Participating actors-

initiated by user

 

Entry conditions-

ball is kickable, goal is in range & user presses shoot key

 

Flow of events-

-user presses shoot key

-ball is kicked towards optimal location on goal with high power

 

Exit conditions-

ball is kicked OR shoot is aborted

 

Special requirements-

 

 

dribble:

includes kick, dash & turn

 

Participating actors-

initiated by user

 

Entry conditions-

ball is kickable & user presses dribble key

 

Flow of events-

-user presses dribble key

-ball is kicked a short distance with direction and power relative to the mouse position

-user dashes in the same direction the ball was kicked

-the above two steps are repeated until dribbling stops

 

Exit conditions-

user releases dribble key OR posession of the ball is lost

 

Special requirements-

 

 

evade:

extends dribble

 

Participating actors-

initiated by user

 

Entry conditions-

user is dribbling & user presses evade key

 

Flow of events-

-user presses one of two evasion keys

-user kicks the ball lightly at an angle of 90deg(direction determined by user)

-user turns to face the ball

-user dashes after the ball

-user turns to face forwards again

 

Exit conditions-

 

Special requirements-

 

 

 

SENSES(descriptions incomplete)

 

see:

 

Participating actors-

initiated by rcssserver

communicates with user

 

Entry conditions-

 

Flow of events-

 

Exit conditions-

 

Special requirements-

 

 

hear:

 

Participating actors-

initiated by rcssserver

communicates with user

 

Entry conditions-

 

Flow of events-

 

Exit conditions-

 

Special requirements-

 

 

senseBody:

 

Participating actors-

initiated by rcssserver

communicates with user

 

Entry conditions-

 

Flow of events-

 

Exit conditions-

 

Special requirements-